880e6dbe092294b62cd584f54024625c852292b4,plugins/groovy/src/org/jetbrains/plugins/groovy/lang/completion/GroovyNoVariantsDelegator.java,GroovyNoVariantsDelegator,fillCompletionVariants,#CompletionParameters#CompletionResultSet#,51

Before Change



  @Override
  public void fillCompletionVariants(final CompletionParameters parameters, final CompletionResultSet result) {
    final boolean empty = JavaNoVariantsDelegator.containsOnlyPackages(result.runRemainingContributors(parameters, true)) ||
                          suggestMetaAnnotations(parameters);

    if (!empty && parameters.getInvocationCount() == 0) {

After Change



  @Override
  public void fillCompletionVariants(final CompletionParameters parameters, CompletionResultSet result) {
    LinkedHashSet<CompletionResult> plainResults = result.runRemainingContributors(parameters, true);
    final boolean empty = JavaNoVariantsDelegator.containsOnlyPackages(plainResults) || suggestMetaAnnotations(parameters);

    if (!empty && parameters.getInvocationCount() == 0) {
      result.restartCompletionWhenNothingMatches();
    }

    if (empty) {
      delegate(parameters, result);
    } else if (Registry.is("ide.completion.show.all.classes") || Registry.is("ide.completion.show.better.matching.classes")) {
      if (parameters.getInvocationCount() <= 1 &&
          JavaCompletionContributor.mayStartClassName(result) &&
          GroovyCompletionContributor.isClassNamePossible(parameters.getPosition()) &&
          !MapArgumentCompletionProvider.isMapKeyCompletion(parameters)) {
        if (Registry.is("ide.completion.show.better.matching.classes")) {
          result = result.withPrefixMatcher(new BetterPrefixMatcher(result.getPrefixMatcher(), BetterPrefixMatcher.getBestMatchingDegree(plainResults)));
        }

        suggestNonImportedClasses(parameters, result);